
<!doctype html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><title>Python: module Asterisk.Util</title>
</head><body bgcolor="#f0f0f8">

<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="heading">
<tr bgcolor="#7799ee">
<td valign=bottom>&nbsp;<br>
<font color="#ffffff" face="helvetica, arial">&nbsp;<br><big><big><strong><a href="Asterisk.html"><font color="#ffffff">Asterisk</font></a>.Util</strong></big></big></font></td
><td align=right valign=bottom
><font color="#ffffff" face="helvetica, arial"><a href=".">index</a><br><a href="file:/usr/src/ks-voip/py-asterisk/Asterisk/Util.py">/usr/src/ks-voip/py-asterisk/Asterisk/Util.py</a></font></td></tr></table>
    <p><tt>Asterisk/Util.py:&nbsp;utility&nbsp;classes.</tt></p>
<p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#aa55cc">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#fffff" face="helvetica, arial"><big><strong>Modules</strong></big></font></td></tr>
    
<tr><td bgcolor="#aa55cc"><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td>&nbsp;</td>
<td width="100%"><table width="100%" summary="list"><tr><td width="25%" valign=top><a href="Asterisk.html">Asterisk</a><br>
</td><td width="25%" valign=top><a href="Asterisk.Logging.html">Asterisk.Logging</a><br>
</td><td width="25%" valign=top><a href="copy.html">copy</a><br>
</td><td width="25%" valign=top><a href="sys.html">sys</a><br>
</td></tr></table></td></tr></table><p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#ee77aa">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#ffffff" face="helvetica, arial"><big><strong>Classes</strong></big></font></td></tr>
    
<tr><td bgcolor="#ee77aa"><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td>&nbsp;</td>
<td width="100%"><dl>
<dt><font face="helvetica, arial"><a href="Asterisk.html#BaseException">Asterisk.BaseException</a>(<a href="exceptions.html#Exception">exceptions.Exception</a>)
</font></dt><dd>
<dl>
<dt><font face="helvetica, arial"><a href="Asterisk.Util.html#SubscriptionError">SubscriptionError</a>
</font></dt></dl>
</dd>
<dt><font face="helvetica, arial"><a href="Asterisk.Logging.html#InstanceLogger">Asterisk.Logging.InstanceLogger</a>(<a href="__builtin__.html#object">__builtin__.object</a>)
</font></dt><dd>
<dl>
<dt><font face="helvetica, arial"><a href="Asterisk.Util.html#EventCollection">EventCollection</a>
</font></dt></dl>
</dd>
<dt><font face="helvetica, arial"><a href="__builtin__.html#dict">__builtin__.dict</a>(<a href="__builtin__.html#object">__builtin__.object</a>)
</font></dt><dd>
<dl>
<dt><font face="helvetica, arial"><a href="Asterisk.Util.html#AttributeDict">AttributeDict</a>
</font></dt></dl>
</dd>
</dl>
 <p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#ffc8d8">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#000000" face="helvetica, arial"><a name="AttributeDict">class <strong>AttributeDict</strong></a>(<a href="__builtin__.html#dict">__builtin__.dict</a>)</font></td></tr>
    
<tr><td bgcolor="#ffc8d8"><tt>&nbsp;&nbsp;&nbsp;</tt></td><td>&nbsp;</td>
<td width="100%"><dl><dt>Method resolution order:</dt>
<dd><a href="Asterisk.Util.html#AttributeDict">AttributeDict</a></dd>
<dd><a href="__builtin__.html#dict">__builtin__.dict</a></dd>
<dd><a href="__builtin__.html#object">__builtin__.object</a></dd>
</dl>
<hr>
Methods defined here:<br>
<dl><dt><a name="AttributeDict-__getattr__"><strong>__getattr__</strong></a>(self, key)</dt></dl>

<dl><dt><a name="AttributeDict-__setattr__"><strong>__setattr__</strong></a>(self, key, value)</dt></dl>

<dl><dt><a name="AttributeDict-copy"><strong>copy</strong></a>(self)</dt></dl>

<hr>
Data and other attributes defined here:<br>
<dl><dt><strong>__dict__</strong> = &lt;dictproxy object&gt;<dd><tt>dictionary&nbsp;for&nbsp;instance&nbsp;variables&nbsp;(if&nbsp;defined)</tt></dl>

<dl><dt><strong>__weakref__</strong> = &lt;attribute '__weakref__' of 'AttributeDict' objects&gt;<dd><tt>list&nbsp;of&nbsp;weak&nbsp;references&nbsp;to&nbsp;the&nbsp;object&nbsp;(if&nbsp;defined)</tt></dl>

<hr>
Methods inherited from <a href="__builtin__.html#dict">__builtin__.dict</a>:<br>
<dl><dt><a name="AttributeDict-__cmp__"><strong>__cmp__</strong></a>(...)</dt><dd><tt>x.<a href="#AttributeDict-__cmp__">__cmp__</a>(y)&nbsp;&lt;==&gt;&nbsp;cmp(x,y)</tt></dd></dl>

<dl><dt><a name="AttributeDict-__contains__"><strong>__contains__</strong></a>(...)</dt><dd><tt>x.<a href="#AttributeDict-__contains__">__contains__</a>(y)&nbsp;&lt;==&gt;&nbsp;y&nbsp;in&nbsp;x</tt></dd></dl>

<dl><dt><a name="AttributeDict-__delitem__"><strong>__delitem__</strong></a>(...)</dt><dd><tt>x.<a href="#AttributeDict-__delitem__">__delitem__</a>(y)&nbsp;&lt;==&gt;&nbsp;del&nbsp;x[y]</tt></dd></dl>

<dl><dt><a name="AttributeDict-__eq__"><strong>__eq__</strong></a>(...)</dt><dd><tt>x.<a href="#AttributeDict-__eq__">__eq__</a>(y)&nbsp;&lt;==&gt;&nbsp;x==y</tt></dd></dl>

<dl><dt><a name="AttributeDict-__ge__"><strong>__ge__</strong></a>(...)</dt><dd><tt>x.<a href="#AttributeDict-__ge__">__ge__</a>(y)&nbsp;&lt;==&gt;&nbsp;x&gt;=y</tt></dd></dl>

<dl><dt><a name="AttributeDict-__getattribute__"><strong>__getattribute__</strong></a>(...)</dt><dd><tt>x.<a href="#AttributeDict-__getattribute__">__getattribute__</a>('name')&nbsp;&lt;==&gt;&nbsp;x.name</tt></dd></dl>

<dl><dt><a name="AttributeDict-__getitem__"><strong>__getitem__</strong></a>(...)</dt><dd><tt>x.<a href="#AttributeDict-__getitem__">__getitem__</a>(y)&nbsp;&lt;==&gt;&nbsp;x[y]</tt></dd></dl>

<dl><dt><a name="AttributeDict-__gt__"><strong>__gt__</strong></a>(...)</dt><dd><tt>x.<a href="#AttributeDict-__gt__">__gt__</a>(y)&nbsp;&lt;==&gt;&nbsp;x&gt;y</tt></dd></dl>

<dl><dt><a name="AttributeDict-__hash__"><strong>__hash__</strong></a>(...)</dt><dd><tt>x.<a href="#AttributeDict-__hash__">__hash__</a>()&nbsp;&lt;==&gt;&nbsp;hash(x)</tt></dd></dl>

<dl><dt><a name="AttributeDict-__init__"><strong>__init__</strong></a>(...)</dt><dd><tt>x.<a href="#AttributeDict-__init__">__init__</a>(...)&nbsp;initializes&nbsp;x;&nbsp;see&nbsp;x.__class__.__doc__&nbsp;for&nbsp;signature</tt></dd></dl>

<dl><dt><a name="AttributeDict-__iter__"><strong>__iter__</strong></a>(...)</dt><dd><tt>x.<a href="#AttributeDict-__iter__">__iter__</a>()&nbsp;&lt;==&gt;&nbsp;iter(x)</tt></dd></dl>

<dl><dt><a name="AttributeDict-__le__"><strong>__le__</strong></a>(...)</dt><dd><tt>x.<a href="#AttributeDict-__le__">__le__</a>(y)&nbsp;&lt;==&gt;&nbsp;x&lt;=y</tt></dd></dl>

<dl><dt><a name="AttributeDict-__len__"><strong>__len__</strong></a>(...)</dt><dd><tt>x.<a href="#AttributeDict-__len__">__len__</a>()&nbsp;&lt;==&gt;&nbsp;len(x)</tt></dd></dl>

<dl><dt><a name="AttributeDict-__lt__"><strong>__lt__</strong></a>(...)</dt><dd><tt>x.<a href="#AttributeDict-__lt__">__lt__</a>(y)&nbsp;&lt;==&gt;&nbsp;x&lt;y</tt></dd></dl>

<dl><dt><a name="AttributeDict-__ne__"><strong>__ne__</strong></a>(...)</dt><dd><tt>x.<a href="#AttributeDict-__ne__">__ne__</a>(y)&nbsp;&lt;==&gt;&nbsp;x!=y</tt></dd></dl>

<dl><dt><a name="AttributeDict-__repr__"><strong>__repr__</strong></a>(...)</dt><dd><tt>x.<a href="#AttributeDict-__repr__">__repr__</a>()&nbsp;&lt;==&gt;&nbsp;repr(x)</tt></dd></dl>

<dl><dt><a name="AttributeDict-__setitem__"><strong>__setitem__</strong></a>(...)</dt><dd><tt>x.<a href="#AttributeDict-__setitem__">__setitem__</a>(i,&nbsp;y)&nbsp;&lt;==&gt;&nbsp;x[i]=y</tt></dd></dl>

<dl><dt><a name="AttributeDict-clear"><strong>clear</strong></a>(...)</dt><dd><tt>D.<a href="#AttributeDict-clear">clear</a>()&nbsp;-&gt;&nbsp;None.&nbsp;&nbsp;Remove&nbsp;all&nbsp;items&nbsp;from&nbsp;D.</tt></dd></dl>

<dl><dt><a name="AttributeDict-get"><strong>get</strong></a>(...)</dt><dd><tt>D.<a href="#AttributeDict-get">get</a>(k[,d])&nbsp;-&gt;&nbsp;D[k]&nbsp;if&nbsp;k&nbsp;in&nbsp;D,&nbsp;else&nbsp;d.&nbsp;&nbsp;d&nbsp;defaults&nbsp;to&nbsp;None.</tt></dd></dl>

<dl><dt><a name="AttributeDict-has_key"><strong>has_key</strong></a>(...)</dt><dd><tt>D.<a href="#AttributeDict-has_key">has_key</a>(k)&nbsp;-&gt;&nbsp;True&nbsp;if&nbsp;D&nbsp;has&nbsp;a&nbsp;key&nbsp;k,&nbsp;else&nbsp;False</tt></dd></dl>

<dl><dt><a name="AttributeDict-items"><strong>items</strong></a>(...)</dt><dd><tt>D.<a href="#AttributeDict-items">items</a>()&nbsp;-&gt;&nbsp;list&nbsp;of&nbsp;D's&nbsp;(key,&nbsp;value)&nbsp;pairs,&nbsp;as&nbsp;2-tuples</tt></dd></dl>

<dl><dt><a name="AttributeDict-iteritems"><strong>iteritems</strong></a>(...)</dt><dd><tt>D.<a href="#AttributeDict-iteritems">iteritems</a>()&nbsp;-&gt;&nbsp;an&nbsp;iterator&nbsp;over&nbsp;the&nbsp;(key,&nbsp;value)&nbsp;items&nbsp;of&nbsp;D</tt></dd></dl>

<dl><dt><a name="AttributeDict-iterkeys"><strong>iterkeys</strong></a>(...)</dt><dd><tt>D.<a href="#AttributeDict-iterkeys">iterkeys</a>()&nbsp;-&gt;&nbsp;an&nbsp;iterator&nbsp;over&nbsp;the&nbsp;keys&nbsp;of&nbsp;D</tt></dd></dl>

<dl><dt><a name="AttributeDict-itervalues"><strong>itervalues</strong></a>(...)</dt><dd><tt>D.<a href="#AttributeDict-itervalues">itervalues</a>()&nbsp;-&gt;&nbsp;an&nbsp;iterator&nbsp;over&nbsp;the&nbsp;values&nbsp;of&nbsp;D</tt></dd></dl>

<dl><dt><a name="AttributeDict-keys"><strong>keys</strong></a>(...)</dt><dd><tt>D.<a href="#AttributeDict-keys">keys</a>()&nbsp;-&gt;&nbsp;list&nbsp;of&nbsp;D's&nbsp;keys</tt></dd></dl>

<dl><dt><a name="AttributeDict-pop"><strong>pop</strong></a>(...)</dt><dd><tt>D.<a href="#AttributeDict-pop">pop</a>(k[,d])&nbsp;-&gt;&nbsp;v,&nbsp;remove&nbsp;specified&nbsp;key&nbsp;and&nbsp;return&nbsp;the&nbsp;corresponding&nbsp;value<br>
If&nbsp;key&nbsp;is&nbsp;not&nbsp;found,&nbsp;d&nbsp;is&nbsp;returned&nbsp;if&nbsp;given,&nbsp;otherwise&nbsp;KeyError&nbsp;is&nbsp;raised</tt></dd></dl>

<dl><dt><a name="AttributeDict-popitem"><strong>popitem</strong></a>(...)</dt><dd><tt>D.<a href="#AttributeDict-popitem">popitem</a>()&nbsp;-&gt;&nbsp;(k,&nbsp;v),&nbsp;remove&nbsp;and&nbsp;return&nbsp;some&nbsp;(key,&nbsp;value)&nbsp;pair&nbsp;as&nbsp;a<br>
2-tuple;&nbsp;but&nbsp;raise&nbsp;KeyError&nbsp;if&nbsp;D&nbsp;is&nbsp;empty</tt></dd></dl>

<dl><dt><a name="AttributeDict-setdefault"><strong>setdefault</strong></a>(...)</dt><dd><tt>D.<a href="#AttributeDict-setdefault">setdefault</a>(k[,d])&nbsp;-&gt;&nbsp;D.<a href="#AttributeDict-get">get</a>(k,d),&nbsp;also&nbsp;set&nbsp;D[k]=d&nbsp;if&nbsp;k&nbsp;not&nbsp;in&nbsp;D</tt></dd></dl>

<dl><dt><a name="AttributeDict-update"><strong>update</strong></a>(...)</dt><dd><tt>D.<a href="#AttributeDict-update">update</a>(E)&nbsp;-&gt;&nbsp;None.&nbsp;&nbsp;Update&nbsp;D&nbsp;from&nbsp;E:&nbsp;for&nbsp;k&nbsp;in&nbsp;E.<a href="#AttributeDict-keys">keys</a>():&nbsp;D[k]&nbsp;=&nbsp;E[k]</tt></dd></dl>

<dl><dt><a name="AttributeDict-values"><strong>values</strong></a>(...)</dt><dd><tt>D.<a href="#AttributeDict-values">values</a>()&nbsp;-&gt;&nbsp;list&nbsp;of&nbsp;D's&nbsp;values</tt></dd></dl>

<hr>
Data and other attributes inherited from <a href="__builtin__.html#dict">__builtin__.dict</a>:<br>
<dl><dt><strong>__new__</strong> = &lt;built-in method __new__ of type object&gt;<dd><tt>T.<a href="#AttributeDict-__new__">__new__</a>(S,&nbsp;...)&nbsp;-&gt;&nbsp;a&nbsp;new&nbsp;object&nbsp;with&nbsp;type&nbsp;S,&nbsp;a&nbsp;subtype&nbsp;of&nbsp;T</tt></dl>

<dl><dt><strong>fromkeys</strong> = &lt;built-in method fromkeys of type object&gt;<dd><tt><a href="__builtin__.html#dict">dict</a>.<a href="#AttributeDict-fromkeys">fromkeys</a>(S[,v])&nbsp;-&gt;&nbsp;New&nbsp;<a href="__builtin__.html#dict">dict</a>&nbsp;with&nbsp;keys&nbsp;from&nbsp;S&nbsp;and&nbsp;values&nbsp;equal&nbsp;to&nbsp;v.<br>
v&nbsp;defaults&nbsp;to&nbsp;None.</tt></dl>

</td></tr></table> <p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#ffc8d8">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#000000" face="helvetica, arial"><a name="EventCollection">class <strong>EventCollection</strong></a>(<a href="Asterisk.Logging.html#InstanceLogger">Asterisk.Logging.InstanceLogger</a>)</font></td></tr>
    
<tr bgcolor="#ffc8d8"><td rowspan=2><tt>&nbsp;&nbsp;&nbsp;</tt></td>
<td colspan=2><tt>Utility&nbsp;class&nbsp;to&nbsp;allow&nbsp;grouping&nbsp;and&nbsp;automatic&nbsp;registration&nbsp;of&nbsp;event.<br>&nbsp;</tt></td></tr>
<tr><td>&nbsp;</td>
<td width="100%"><dl><dt>Method resolution order:</dt>
<dd><a href="Asterisk.Util.html#EventCollection">EventCollection</a></dd>
<dd><a href="Asterisk.Logging.html#InstanceLogger">Asterisk.Logging.InstanceLogger</a></dd>
<dd><a href="__builtin__.html#object">__builtin__.object</a></dd>
</dl>
<hr>
Methods defined here:<br>
<dl><dt><a name="EventCollection-__iadd__"><strong>__iadd__</strong></a>(self, collection)</dt><dd><tt>Add&nbsp;all&nbsp;the&nbsp;events&nbsp;in&nbsp;&lt;collection&gt;&nbsp;to&nbsp;our&nbsp;collection.</tt></dd></dl>

<dl><dt><a name="EventCollection-__init__"><strong>__init__</strong></a>(self, initial<font color="#909090">=None</font>)</dt><dd><tt>If&nbsp;&lt;initial&gt;&nbsp;is&nbsp;not&nbsp;None,&nbsp;register&nbsp;functions&nbsp;from&nbsp;the&nbsp;list&nbsp;&lt;initial&gt;<br>
waiting&nbsp;for&nbsp;events&nbsp;with&nbsp;the&nbsp;same&nbsp;name&nbsp;as&nbsp;the&nbsp;function.</tt></dd></dl>

<dl><dt><a name="EventCollection-__isub__"><strong>__isub__</strong></a>(self, collection)</dt><dd><tt>Remove&nbsp;all&nbsp;the&nbsp;events&nbsp;in&nbsp;&lt;collection&gt;&nbsp;from&nbsp;our&nbsp;collection.</tt></dd></dl>

<dl><dt><a name="EventCollection-copy"><strong>copy</strong></a>(self)</dt></dl>

<dl><dt><a name="EventCollection-fire"><strong>fire</strong></a>(self, name, *args, **kwargs)</dt><dd><tt>Fire&nbsp;event&nbsp;&lt;name&gt;&nbsp;passing&nbsp;*&lt;args&gt;&nbsp;and&nbsp;**&lt;kwargs&gt;&nbsp;to&nbsp;subscribers.</tt></dd></dl>

<dl><dt><a name="EventCollection-subscribe"><strong>subscribe</strong></a>(self, name, handler)</dt><dd><tt>Subscribe&nbsp;callable&nbsp;&lt;handler&gt;&nbsp;to&nbsp;event&nbsp;named&nbsp;&lt;name&gt;.</tt></dd></dl>

<dl><dt><a name="EventCollection-unsubscribe"><strong>unsubscribe</strong></a>(self, name, handler)</dt><dd><tt>Unsubscribe&nbsp;callable&nbsp;&lt;handler&gt;&nbsp;to&nbsp;event&nbsp;named&nbsp;&lt;name&gt;.</tt></dd></dl>

<hr>
Methods inherited from <a href="Asterisk.Logging.html#InstanceLogger">Asterisk.Logging.InstanceLogger</a>:<br>
<dl><dt><a name="EventCollection-getLogger"><strong>getLogger</strong></a>(self)</dt><dd><tt>Return&nbsp;the&nbsp;Logger&nbsp;instance&nbsp;which&nbsp;receives&nbsp;debug&nbsp;messages&nbsp;for&nbsp;this&nbsp;class<br>
instance.</tt></dd></dl>

<dl><dt><a name="EventCollection-getLoggerName"><strong>getLoggerName</strong></a>(self)</dt><dd><tt>Return&nbsp;the&nbsp;name&nbsp;where&nbsp;log&nbsp;messages&nbsp;for&nbsp;this&nbsp;instance&nbsp;is&nbsp;sent.</tt></dd></dl>

<hr>
Data and other attributes inherited from <a href="Asterisk.Logging.html#InstanceLogger">Asterisk.Logging.InstanceLogger</a>:<br>
<dl><dt><strong>__dict__</strong> = &lt;dictproxy object&gt;<dd><tt>dictionary&nbsp;for&nbsp;instance&nbsp;variables&nbsp;(if&nbsp;defined)</tt></dl>

<dl><dt><strong>__weakref__</strong> = &lt;attribute '__weakref__' of 'InstanceLogger' objects&gt;<dd><tt>list&nbsp;of&nbsp;weak&nbsp;references&nbsp;to&nbsp;the&nbsp;object&nbsp;(if&nbsp;defined)</tt></dl>

</td></tr></table> <p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#ffc8d8">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#000000" face="helvetica, arial"><a name="SubscriptionError">class <strong>SubscriptionError</strong></a>(<a href="Asterisk.html#BaseException">Asterisk.BaseException</a>)</font></td></tr>
    
<tr bgcolor="#ffc8d8"><td rowspan=2><tt>&nbsp;&nbsp;&nbsp;</tt></td>
<td colspan=2><tt>This&nbsp;exception&nbsp;is&nbsp;raised&nbsp;when&nbsp;an&nbsp;attempt&nbsp;to&nbsp;register&nbsp;the&nbsp;same&nbsp;(event,<br>
handler)&nbsp;tuple&nbsp;twice&nbsp;is&nbsp;detected.<br>&nbsp;</tt></td></tr>
<tr><td>&nbsp;</td>
<td width="100%"><dl><dt>Method resolution order:</dt>
<dd><a href="Asterisk.Util.html#SubscriptionError">SubscriptionError</a></dd>
<dd><a href="Asterisk.html#BaseException">Asterisk.BaseException</a></dd>
<dd><a href="exceptions.html#Exception">exceptions.Exception</a></dd>
</dl>
<hr>
Methods inherited from <a href="Asterisk.html#BaseException">Asterisk.BaseException</a>:<br>
<dl><dt><a name="SubscriptionError-__init__"><strong>__init__</strong></a>(self, error)</dt></dl>

<dl><dt><a name="SubscriptionError-__str__"><strong>__str__</strong></a>(self)</dt></dl>

<hr>
Methods inherited from <a href="exceptions.html#Exception">exceptions.Exception</a>:<br>
<dl><dt><a name="SubscriptionError-__getitem__"><strong>__getitem__</strong></a>(...)</dt></dl>

</td></tr></table></td></tr></table><p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#55aa55">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#ffffff" face="helvetica, arial"><big><strong>Data</strong></big></font></td></tr>
    
<tr><td bgcolor="#55aa55"><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td>&nbsp;</td>
<td width="100%"><strong>Unspecified</strong> = &lt;Asterisk.Util.Unspecified&gt;<br>
<strong>__Id__</strong> = '$Id: Asterisk.Util.html 95 2004-10-06 19:19:42Z dw $'<br>
<strong>__author__</strong> = 'David M. Wilson &lt;dw-py-Asterisk-Util.py@botanicus.net&gt;'</td></tr></table><p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#7799ee">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#ffffff" face="helvetica, arial"><big><strong>Author</strong></big></font></td></tr>
    
<tr><td bgcolor="#7799ee"><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td>&nbsp;</td>
<td width="100%">David&nbsp;M.&nbsp;Wilson&nbsp;&lt;dw-py-Asterisk-Util.py@botanicus.net&gt;</td></tr></table>
</body></html>